import { ElMessage } from "element-plus"
import {useTokenInfoStore} from '@/stores/login-Pinia'
// 验证异步请求结果是否正确，正确返回数据，错误返回错误信息

export function commonResult(code,data,msg){
    if(code == 0){
        return{
            code: code,
            data: data,
            msg: msg
        }
    }else{
        ElMessage.error(res.msg)
    }
}
export function AsyncCheckResultThenReturnData(res){
    if(res.code == 0){
        return res.data
    }else{
        ElMessage.error(res.msg)
        return null
    }
}

// 验证异步请求结果是否正确，正确返回数据，错误返回自定义错误信息
export function AsyncCheckResultThenReturnDataAddCustomMsg(res,msg){
    if(res.code == 0){
        console.log(res.data);
        return res.data   
    }else{
        ElMessage.error(msg)
        return null
    }
}

// 验证异步请求结果是否正确，不返回数据
export function AsyncCheckResult(res){
    if(res.code == 0){
        return true   
    }else{
        return false
    }
}

// 验证异步请求结果是否正确，不返回数据, 附带自定义提示
export function AsyncCheckResultAddCustomMsg(res,msg){
    if(res.code == 0){
        return true
    }else{
        console.log(msg)
        return false
    }
}

// 验证同步请求结果是否正确，不返回数据
export function SyncCheckResult(res){
    res.then((result) => {
        if(result){
           return AsyncCheckResult(result)
        }else{
            return false
        }
    })
}

// 验证同步请求结果是否正确，不返回数据, 附带自定义提示
export function SyncCheckResultAddCustomMsg(res,msg){
    res.then((result) => {
        if(result){
           return AsyncCheckResultAddCustomMsg(result)
        }else{
            return false
        }
    })
}

// 验证同步请求结果是否正确，正确返回数据，错误返回错误信息
export function SyncCheckResultThenReturnData(res){
    res.then((result) => {
        if(result){
           return AsyncCheckResultThenReturnData(result)
        }else{
            return null
        }
    })
}

// 验证通步请求结果是否正确，正确返回数据，错误返回自定义错误信息
export function SyncCheckResultThenReturnDataAddCustomMsg(res,msg){
    res.then((result) => {
        if(result){
           return AsyncCheckResultThenReturnDataAddCustomMsg(result,msg)
        }else{
            return null
        }
    })
}

